home *** CD-ROM | disk | FTP | other *** search
/ ADA Programming Guide / ADA Programming Guide.iso / ada_gwu / ifile.h < prev    next >
C/C++ Source or Header  |  1996-01-30  |  2KB  |  56 lines

  1. /*
  2.  * Copyright (C) 1985-1992  New York University
  3.  * 
  4.  * This file is part of the Ada/Ed-C system.  See the Ada/Ed README file for
  5.  * warranty (none) and distribution info and also the GNU General Public
  6.  * License for more details.
  7.  
  8.  */
  9.  
  10. #ifndef _ifile_h
  11. #define _ifile_h
  12.  
  13. /* An IFILE is a FILE with a header block at the front consisting of
  14.  * the following as defined in the struct fh.
  15.  */
  16. struct fh {
  17.     char    fh_mode;        /* mode: 'r' or 'w' */
  18.     long    fh_slots;    /* offset from start of slots info */
  19.     long    fh_units_end;   /* offset from start of end of units info */
  20.     FILE    *fh_file;    /* associated file when open */
  21. };
  22.  
  23. #define IFILE struct fh 
  24.  
  25. #ifdef EXPORT
  26. long export_ifseek();
  27. #define ifseek(ifile,desc,offset,ptr)    export_ifseek(ifile,offset,ptr)
  28. #endif
  29.  
  30. #ifdef EXPORT
  31. #define putnum(ofile,desc,n)        export_put_num(ofile,n)
  32. #define putpos(ofile,desc,n)        export_put_pos(ofile,n)
  33. #define putstr(ofile,desc,s)        export_put_str(ofile,s)
  34. #define putchr(ofile,desc,n)        export_put_chr(ofile,n)
  35. #define putnod(ofile,desc,node)        export_put_nod(ofile,node)
  36. #define putnodref(ofile,desc,node)    export_put_nodref(ofile,node)
  37. #define putint(ofile,desc,n)        export_put_int(ofile,n)    
  38. #define putlong(ofile,desc,n)        export_put_long(ofile,n)
  39. #define putunt(ofile,desc,n)        export_put_unt(ofile,n)
  40. #define putuint(ofile,desc,uint)    export_put_uint(ofile,uint)
  41. #define putsym(ofile,desc,sym)        export_put_sym(ofile,sym)
  42. #define putsymref(ofile,desc,sym)    export_put_symref(ofile,sym)
  43. #define getint(ifile,desc)        export_get_int(ifile)
  44. #define getnum(ifile,desc)        export_get_num(ifile)
  45. #define getchr(ifile,desc)        export_get_chr(ifile)
  46. #define getlong(ifile,desc)        export_get_long(ifile)
  47. #define getstr(ifile,desc)        export_get_str(ifile)
  48. #define getnod(ifile,desc,node,unum)    export_get_nod(ifile,node,unum)
  49. #define getnodref(ifile,desc)        export_get_nodref(ifile)
  50. #define getuint(ifile,desc)        export_get_uint(ifile)
  51. #define getsym(ifile,desc)        export_get_sym(ifile)
  52. #define getsymref(ifile,desc)        export_get_symref(ifile)
  53. #endif
  54.  
  55. #endif /* _ifile_h */
  56.